package com.ytktt.study.week8.task6.hmily.tcc.order.service;

import com.ytktt.study.week8.task6.hmily.tcc.order.entity.OrderEntity;

/**
 * TODO
 *
 * @author ytk
 */
public interface PaymentService {

    void makePayment(OrderEntity entity);

    void testMakePayment(OrderEntity entity);

    void makePaymentWithNested(OrderEntity entity);

    void makePaymentWithNestedException(OrderEntity entity);

    String mockPaymentItemStockWithTryException(OrderEntity entity);

    String mockPaymentItemStockWithTryTimeout(OrderEntity entity);

    String mockPaymentAccountWithTryException(OrderEntity entity);

    String mockPaymentAccountWithTryTimeout(OrderEntity entity);

    String mockPaymentItemStockWithConfirmTimeout(OrderEntity entity);
}
